1. Field of the Invention
The present invention is directed to the field of computer-based formats for data management and data storage. More particularly the present invention is directed to sharing and moving data between different types of data storage formats.
2. Description of the Background Art
Many businesses store data in a number of formats, such as hierarchical structures and relational databases. For example, data may be stored in a database, such as the product marketed under the trademarks IBM IMS Database Manager (IMS). Data may also be stored in data files and accessed by systems such as the product marketed under the trademark Multiple Virtual Storage (MVS). Data files may be configured by the Virtual Storage Access Method (VSAM). Yet another technique for accessing and storing data is the use of a partitioned data set (PDS) that is typically used for direct-access storage that is divided into partitions. Relational data may be stored in databases, such as the product marketed under the trademark IBM DB2. Businesses often need to share and move data between the different types of data storage.
A database is a collection of data. The data in a database may be organized in a hierarchical structure. Such a structure may include segments and fields that contain units of data that may be transferred or manipulated by database techniques. Information about the hierarchical position of data within the hierarchical database may be stored with, and accessed by control mechanisms of a hierarchical database. For example, in an IMS Database Manager, data structures may be defined in a variety of ways, such as a database description (DBD) that is a collection of parameter statements. The database description typically defines characteristics, such as a database record structure, and relationships between segments in a database record. Another hierarchical structure is the program specification block (PSB) that is a control block that describes databases and logical message destinations used by an application program. The database description (DBD) may be contained within the program specification control block (PSB). Yet another hierarchical structure is a programming language data structure, such as a COBOL copybook structure or a PL/I data structure. Those skilled in the art will appreciate the use of programming language data structures. The programming language data structure may be used in the same manner as PSBs or other files that are included in a computer program and that provide information that enables compilation and execution of the computer program.
A relational database may be organized in the form of tables. A table typically consists of columns that represent attribute types and records that represent specific instances of data associated with the table, and the table has attribute instances associated with the columns. A relational database is a database that may be represented by a set of tables containing information that is manipulated in accordance with the relational model associated with the data. The product IBM DB2 stores the data associated with the database in tables, and each table has a name.
Mapping data structures from hierarchical structures, such as database records or data files, to relational tables can be a very time-consuming task. The use of various hierarchical data structures makes it difficult to visualize, navigate, and select the parts of hierarchical structure for techniques such as moving and copying data to a relational database. For instance when there is a large amount of data, navigating a path through the hierarchical structure associated with the data without understanding the mutual exclusivity of various data fields is prone to error and therefore an inefficient activity.
A further difficulty is that copying or moving data from a hierarchical database or data files requires information about segments and fields associated with each segment of information that is copied or moved. This adds overhead and requires valuable human resources and computer resources to facilitate such techniques. By means of example, users of relational database information often do not understand the structure and nature of hierarchical database information, and vise versa, thus making the process of copying or moving such data even more difficult.
From the foregoing it will be apparent that there is still a need to improve the technique of sharing and moving data between different types of data storage formats.